package com.jy.adscm.spss.mapper.mysql;

import com.jy.adscm.spss.bean.*;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author yyy
 * @since 2018-11-08
 */
public interface Base_commodityinfoMapper extends BaseMapper<Base_commodityinfo> {
    /**
     * 根据计划和实际获取对应的周
     * @return
     */
    List<Base_commodityinfo> getWeek();

    /**
     * 修改计划周
     * @param whereWeek
     * @param spid
     */
    void  updatePlanWeek(@Param("whereWeek")String whereWeek,@Param("spid")String spid);
    /**
     *修改实际周
     */

    void updatePracticalWeek(@Param("sjwhereWeek")String sjwhereWeek,@Param("spid")String spid);

    /**
     * 获取销售采购计划总价
     * @param rwlx
     * @return
     */
    List<Base_commodityinfo> getPlanTotal(@Param("rwlx")String rwlx);

    /**
     * 获取销售采购实际总价
     * @param rwlx
     * @return
     */
    List<Base_commodityinfo> getPracticalTotal(@Param("rwlx")String rwlx);

    /**
     * 根据客户信息任务类型查询获取采购和销售信息绘制图标
     */
    public List<SalePurchase> getSaleData(@Param("rwlx")String rwlx, @Param("code")String code);

    List<SalePurchase> getByDetailed(@Param("whereWeek")String whereWeek, @Param("rwlx")String rwlx);

    public List<SalePurchase> getBySaleDetailed(@Param("whereWeek")String whereWeek,@Param("rwlx")String rwlx);
    /**
     * 获取销售或者采购的客户信息
     */

    public List<SalePurchase> getBykhxx(@Param("rwlx")String rwlx);
    /**
     * 绘制销售采购堆积图
     * @param rwlx
     * @return
     */
    public List<SalePurchase>getStackingChart(@Param("rwlx")String rwlx);
//    /**
//	  * 获取唯一客户信息
//	  */
//
 public List<String> getCustomer(@Param("rwlx") String rwlx);

    /**
     * 根据月查 采购详细信息
     */
    public List<SalePurchase> getMouthCGDetail(@Param("startTime")String startTime,@Param("endTime")String endTime);
    /**
     * 根据月查销售详细信息
     */
    public List<SalePurchase> getMouthXSDetail(@Param("startTime")String startTime,@Param("endTime")String endTime);
    /**
     * 根据月查收入详细信息
     *
     */
    public List<SZResult> getMouthSRDetail(@Param("startTime")String startTime,@Param("endTime")String endTime);

    /**
     * 根据月查支出详细信息
     */
    public List<SZResult> getMouthZCDetail(@Param("startTime")String startTime, @Param("endTime")String endTime);
    /**
     * 根据商品id修改销售采购金额、日期
     */
    public List<SalePurchase> getXSSPid(@Param("SPID")String SPID);


    void updateXSTable(SalePurchase salePurchase);
    /**
     * 根据iecode修改收入支出表的日期金额
     */
    public List<SZResult> getSZIECODE(@Param("IECODE")String IECODE);

    void updateSZTable(SZResult szResult);
    /**
     * 获取收支码表
     */
    public List<SzName> getSzName(@Param("SZLX") String SZLX);
    /**
     * 根据商品id删除销售采购数据
     */
    void deleteSP(@Param("spid")String spid);

    /**
     * 查询收入唯一类别
     */
    public List<IncomeStacking> getOnlyCategory(@Param("szlx")String szlx);
    /**
     *查询一周内唯一一个科目
     * @param szlx
     * @return
     */
    public List<IncomeStacking> getOnlySubject(@Param("szlx")String szlx);

    /**
     * 获取所有采购销售数据
     */
    List<SalePurchase> getAllCGDetail(@Param("rwlx")String rwlx);

    List<SZResult> getAllSRDetail(@Param("szlx")String szlx);


}
